package org.NooLab.somclients.components.producer;

import org.NooLab.somclients.components.params.SomClientParamPkgIntf;
import org.NooLab.somclients.domains.SomClientIntf;
import org.NooLab.somclients.domains.som.SomProducer;

public class SomClientProducer {

	SomClientParamPkgIntf scParams;
	
	public SomClientProducer(SomClientParamPkgIntf pp) {
		// 
		scParams = pp;
		
		boolean isSom = (scParams.getPackageType() == SomClientIntf._SOMCLIENT_TYPE_SOMDED) ||
						(scParams.getPackageType() == SomClientIntf._SOMCLIENT_TYPE_SOMPOP) ;

		boolean ismarkov = (scParams.getPackageType() == SomClientIntf._SOMCLIENT_TYPE_MARKOVTABLE) ||
						   (scParams.getPackageType() == SomClientIntf._SOMCLIENT_TYPE_MARKOV)  ||
						   (scParams.getPackageType() == SomClientIntf._SOMCLIENT_TYPE_MARKOVHMM) ;

		boolean isDisplay = (scParams.getPackageType() == SomClientIntf._SOMCLIENT_TYPE_DISPLAY) ;

		boolean isQuery   = (scParams.getPackageType() == SomClientIntf._SOMCLIENT_TYPE_QUERY) ;

		if (isSom){
			SomProducer somProds = new SomProducer(pp);
			somProds.produce();
		}
		
		if (ismarkov ){
			
		}
		if (isDisplay){
			
		}
		if (isQuery){
			
		}
		
	}
	
	
	

}

class MarkovProducer{
	
}

class DisplayProducer{
	
}

class QueryProducer{
	
}


